package com.whfc.fvs.dao;

import com.whfc.fvs.dto.FvsSnapshotDTO;
import com.whfc.fvs.entity.FvsSnapshot;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

/**
 * @author qzexing
 * @version 1.0
 * @date 2021-02-24 12:00
 */
@Repository
public interface FvsSnapshotMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(FvsSnapshot record);

    int insertSelective(FvsSnapshot record);

    FvsSnapshot selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(FvsSnapshot record);

    int updateByPrimaryKey(FvsSnapshot record);

    /**
     * 查找抓拍图片列表
     *
     * @param deptId    组织机构ID
     * @param startDate 开始日期
     * @param endDate   结束日期
     * @param keyword   搜索关键字
     * @return 抓拍图片列表
     */
    List<FvsSnapshotDTO> selectSnapshotList(@Param("deptId") Integer deptId,
                                            @Param("startDate") Date startDate,
                                            @Param("endDate") Date endDate,
                                            @Param("keyword") String keyword);

    /**
     * 批量保存快照
     *
     * @param snapshotList 快照
     */
    void batchInsert(@Param("snapshotList") List<FvsSnapshot> snapshotList);

    /**
     * 视频日志
     *
     * @param deptId
     * @param date
     * @return
     */
    Integer selectSnapshotNum(@Param("deptId") Integer deptId, @Param("date") Date date);
}